package com.zhuanzhuan.hero.user.service;

import java.util.List;
import java.util.Map;

/**
 * @ClassName ICounterService
 * @Description
 * @Author hanjunjun
 * @Date 2024/7/3 17:05
 */
public interface ICounterService {

    /**
     * 同行认证未读数++
     *
     * @param uid
     * @return boolean
     * @author  hanjunjun
     * @date 2024/7/3
     **/
    boolean fraternityAuthUnreadIncre(Long uid);

    /**
     * 查询两个人之间的交易单数
     *
     * @param fromUid
     * @param toUid
     * @return java.lang.Long  不存在则返回0
     * @author  hanjunjun
     * @date 2024/7/5
     **/
    Long queryDealSuccessRecycleOrderNum(Long fromUid, Long toUid);

    /**
     * 查询用户总共的交易单数
     *
     * @param uid
     * @return java.lang.Long
     * @author  hanjunjun
     * @date 2024/7/5
     **/
    Long queryDealSuccessRecycleOrderNum(Long uid);

    /**
     * 批量查询用户总共的交易单数
     *
     * @param uids
     * @return java.util.Map<java.lang.Long,java.lang.Long>
     * @author  hanjunjun
     * @date 2024/7/30
     **/
    Map<Long, Long> batchQueryDealSuccessRecycleOrderNum(List<Long> uids);

    /**
     * 用户靠谱数++
     *
     * @param uid
     * @return void
     * @author  hanjunjun
     * @date 2024/7/5
     **/
    boolean userReliableNumIncre(Long uid);

    /**
     * 用户靠谱数--
     *
     * @param uid
     * @return void
     * @author  hanjunjun
     * @date 2024/7/5
     **/
    boolean userReliableNumDecre(Long uid);

    /**
     * 用户不靠谱数++
     *
     * @param uid
     * @return void
     * @author  hanjunjun
     * @date 2024/7/5
     **/
    boolean userUnReliableNumIncre(Long uid);

    /**
     * 用户不靠谱数--
     *
     * @param uid
     * @return void
     * @author  hanjunjun
     * @date 2024/7/5
     **/
    boolean userUnReliableNumDecre(Long uid);

    /**
     * 靠谱未读总数++
     *
     * @param uid
     * @return boolean
     * @author  hanjunjun
     * @date 2024/7/6
     **/
    boolean reliableUnreadNumIncre(Long uid);

    /**
     * 查询用户粉丝数
     *
     * @param uid
     * @return java.lang.Integer
     * @author  hanjunjun
     * @date 2024/7/8
     **/
    Long queryFollowedNum(Long uid);

    /**
     * 批量查询用户粉丝数
     *
     * @param uids
     * @return java.util.Map<java.lang.Long,java.lang.Long>
     * @author  hanjunjun
     * @date 2024/7/30
     **/
    Map<Long, Long> batchQueryFollowedNum(List<Long> uids);

    /**
     * 查询用户靠谱值
     *
     * @param uid
     * @return void
     * @author  hanjunjun
     * @date 2024/7/8
     **/
    Long queryCertifiedReliableNum(Long uid);

    /**
     * 批量查询用户靠谱值
     *
     * @param uids
     * @return java.util.Map<java.lang.Long,java.lang.Long>
     * @author  hanjunjun
     * @date 2024/7/30
     **/
    Map<Long, Long> batchQueryCertifiedReliableNum(List<Long> uids);
}